1. Technical Field
The present invention relates to a robot, a robot system, a control device, and a control method.
2. Related Art
Robots perform work including an operation in which target objects stacked in a disorderly manner are taken out one by one and assembled to other objects. Such an operation is, for example, a pin picking operation and is regarded as being important in industry. When the target objects are taken out, the target objects stacked in a disorderly manner are sometimes gripped by a jig or an exclusive device mounted to a robot arm and aligned again so as to assume a fixed position and posture. However, since it is necessary to mount different exclusive jigs or devices to the robot arm according to shapes and sizes of the target objects, economical and temporal costs are increased.
In order to resolve or reduce such a problem, there has been an attempt to irradiate a target object with light beams using a light source such as a projector or a laser beam generator and acquire three-dimensional information of the target object by processing light reflected from the target object. The acquired three-dimensional information is used for processing of requiring a position and posture of the target object, but is not used as general purpose. In addition, the processing is time consuming.
Accordingly, there is an attempt to acquire three-dimensional information including depth information of a target object using a more general-purpose device and acquire a position and posture of the target object using the acquired three-dimensional information, as in a camera. For example, the three-dimensional information is image data formed from a three-dimensional point group indicative of a shape of the target object. When a position and posture of a predetermined target object are required, matching of a template of the predetermined target object with a three-dimensional point group is performed. However, the number of dimensions to be calculated is increased in the matching of the three-dimensional point group, compared to that of a two-dimensional image. That is, the number of dimensions when the position and posture of the target object are required is increased from three dimensions to six dimensions according to the number of dimensions of the matching target object increasing from two dimensions to three dimensions. When a similar computation technique is used, a computation amount and a computation time are exponentially increased according to the number of dimensions of the target object. For this reason, there is still a need for a large amount of computation amount and computation time to estimate the position and the posture regarding the three-dimensional point group.
In order to resolve such problems, a method of using shape characteristics of a target object to estimate a position and posture thereof is proposed. For example, JP-A-2009-128201 discloses a pin picking system including a position and posture recognition device capable of performing pin picking with respect to a part group in which parts having the same shapes are stacked in a disorderly manner, and the like. In the pin picking system, linear light regions in which light regions on a captured image extend independently on a straight line are extracted from the captured image. In more detail, the light regions are extracted from the captured image using a threshold, and the linear light regions extending independently and linearly are extracted from the respective extracted light regions without intersection of the light regions.
However, objects used at a work site such as a factory has different shapes. For example, a large number of objects such as screws and bolts, each having a small plane region on a surface thereof, exist. Since such objects are packed into a bag made of plastic film to be transported and delivered, the objects are rarely aligned in a work space. Accordingly, when either of the objects is operated as a target object by a robot, a position and posture thereof is required to be individually specified.
In this context, it is considered to separate a point group belonging to a region regarded as one object from three-dimensional point group information of an object group stacked in bulk, and acquire position and posture information indicative of a position and posture of the object from a shape of the object indicated by the separated point group. When the whole three-dimensional point group information of the object group stacked in bulk is used in a case of determining the region regarded as one object, a throughput and a processing time for determining the region are increased. In addition, when the region regarded as one object is erroneously determined, the position and posture of the object are specified from the point group belonging to the erroneously determined region so that a position and posture of an object which is not originally present are specified.